﻿using System;
using System.ComponentModel.DataAnnotations;
using Abp.Domain.Entities.Auditing;

namespace Vecen.BangChuang.BangChuang.Promotions {
    public class Promotion: CreationAuditedEntity {
        /// <summary>
        /// 缩略图附件类型
        /// </summary>
        public const string PromotionThumbnailAttachmentType = "PromotionThumbnail";

        /// <summary>
        /// 轮播图附件类型
        /// </summary>
        public const string PromotionHeaderAttachmentType = "PromotionHeader";

        /// <summary>
        /// 内容附件类型
        /// </summary>
        public const string PromotionContentAttachmentType = "PromotionContent";

        /// <summary>
        /// 名称
        /// </summary>
        public string Name { get; set; }

        /// <summary>
        /// 为某类用户展示
        /// </summary>
        public string ShowForUserTypes { get; set; }

        /// <summary>
        /// 区域ID
        /// </summary>
        public long AreaCode { get; set; }

        /// <summary>
        /// 描述
        /// </summary>
        [StringLength(256)]
        public string Description { get; set; }

        /// <summary>
        /// 商品介绍
        /// </summary>
        [StringLength(Int32.MaxValue)]
        public string GraphicContent { get; set; }

        /// <summary>
        /// 帮惠点击单价
        /// </summary>
        public decimal? InnerClickPrice { get; set; }

        /// <summary>
        /// 点击单价
        /// </summary>
        public decimal? ClickPrice { get; set; }

        /// <summary>
        /// 投放价
        /// </summary>
        public decimal? PutOnPrice { get; set; }

        /// <summary>
        /// 投放时效(小时)
        /// </summary>
        public int PutOnTimeLimit { get; set; }


        /// <summary>
        /// 投放状态
        /// <seealso cref="Promotions.PromotionStatus"/>
        /// </summary>
        [StringLength(32)]
        public string PromotionStatus { get; set; }

        /// <summary>
        /// 最后上架时间
        /// </summary>
        public DateTime? LastPutOnTime { get; set; }
        /// <summary>
        /// 大学名称
        /// </summary>
        [StringLength(64)]
        public string UniversityName { get; set; }

        /// <summary>
        /// 学院名称
        /// </summary>
        [StringLength(64)]
        public string CollegeName { get; set; }

        /// <summary>
        /// 团队奖励
        /// </summary>
        public decimal TeamBonus { get; set; }
    }
}